/*
  Copyright © 2010  Camilo Costa Campos

      This file is part of Touché.

      Touché is free software: you can redistribute it and/or modify
      it under the terms of the GNU Lesser General Public License as published
      by the Free Software Foundation, either version 3 of the License, or
      (at your option) any later version.

      This program is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      GNU Lesser General Public License for more details.

      You should have received a copy of the GNU Lesser General Public License
      along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */

#ifndef INTERPRETER_H
#define INTERPRETER_H

#endif // INTERPRETER_H

#include <QString>
#include <QObject>
#include <QUuid>
#include "QXmppMessage.h"

class Interpreter: public QObject
{
    Q_OBJECT

public:
    Interpreter();

public slots:
    void onMessageReceived(const QXmppMessage &message);

signals:
    void chatText(QString);
    void elementReceived(QUuid uuid, QString type, QString xml, QString file);
    void linkReceived(QUuid, QUuid);
    void lockElement(QUuid uuid);
    void unlockElement(QUuid uuid);
    void elementLocked(QUuid uuid);
    void elementUnlocked(QUuid uuid);
};
